package cn.iocoder.yudao.module.crm.controller.admin.tasktype.vo;

import cn.iocoder.yudao.module.crm.controller.admin.tasktype.vo.tasktypeapprover.TaskTypeApproverDetail;
import cn.iocoder.yudao.module.crm.controller.admin.tasktype.vo.tasktypeassignee.TaskTypeAssigneeDetail;
import cn.iocoder.yudao.module.crm.controller.admin.tasktype.vo.tasktypecontent.TaskTypeContentDetail;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

@Schema(description = "管理后台 - CRM 任务单详情类型 Response VO")
@Data
@ExcelIgnoreUnannotated
public class TaskTypeDetailReqVO {

    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "31190")
    @ExcelProperty("编号")
    private Long id;

    @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
    @ExcelProperty("名称")
    private String name;

    @Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "10901")
    @ExcelProperty("产品ID")
    private Long productId;

    @Schema(description = "描述", example = "你猜")
    @ExcelProperty("描述")
    private String description;

    @Schema(description = "任务单类型审批人详情", requiredMode = Schema.RequiredMode.REQUIRED)
    private List<TaskTypeApproverDetail> approver;

    @Schema(description = "任务单类型处理人详情", requiredMode = Schema.RequiredMode.REQUIRED)
    private List<TaskTypeAssigneeDetail> autoIssue;

    @Schema(description = "任务单类型内容详情", requiredMode = Schema.RequiredMode.REQUIRED)
    private List<TaskTypeContentDetail> content;
}